home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gekkan Dennou Club 145
/
Gekkan Dennou Club - 2000.6 Vol. 145 (Japan).7z
/
Gekkan Dennou Club - 2000.6 Vol. 145 (Japan) (Track 1).bin
/
tools
/
sharp
/
sxwork3.lzh
/
福袋
/
注釈付ヘッダ
/
PRINT.H
< prev
next >
Wrap
Text File
|
1994-02-20
|
7KB
|
234 lines
/*
* print.h X68k SX_SYSTEM ver 2.01 Copyright 1994 SHARP/First Class Technology
*/
#ifndef __PRINT_H
#define __PRINT_H
#ifndef __SXDEF2_H
#include <sxdef2.h>
#endif
#ifdef FORWORD
#define __PROTO_TYPE
#endif
#ifdef __STDC__
#define __PROTO_TYPE
#endif
typedef enum PaperKind PaperKind; /* 用紙の種類 */
typedef enum PaperOption PaperOption; /* オプション装置の種類 */
typedef enum PColorKind PColorKind; /* カラー印刷の色種類 */
typedef enum PDrvrCommand PDrvrCommand; /* プリンタドライバコマンド */
typedef enum PDrvrCtrl PDrvrCtrl; /* ドライバコントロール */
typedef enum PrinterState PrinterState; /* プリンタの状態 */
typedef enum PrintCtrl PrintCtrl; /* プリントコントロール */
typedef enum PrintState PrintState; /* 印刷の状態 */
typedef struct Print Print; /* プリントレコード */
typedef struct PDrvrInfo PDrvrInfo; /* プリンタドライバ情報レコード */
/*
* プリントマン (Print Man)
*/
#define P_DEFAULT (-1) /* デフォルト */
enum PaperKind { /* 用紙の種類 */
P_FREE, /* フリーサイズ */
P_A3, /* A3用紙縦置き */
P_A3R, /* A3用紙横置き */
P_A4, /* A4用紙縦置き */
P_A4R, /* A4用紙横置き */
P_A5, /* A5用紙縦置き */
P_A5R, /* A5用紙横置き */
P_B3, /* B3用紙縦置き */
P_B3R, /* B3用紙横置き */
P_B4, /* B4用紙縦置き */
P_B4R, /* B4用紙横置き */
P_B5, /* B5用紙縦置き */
P_B5R, /* B5用紙横置き */
P_10X11, /* 10×11インチ連続用紙 */
P_15X11, /* 15×11インチ連続用紙 */
P_LETTER, /* ハガキ縦置き */
P_LETTERR /* ハガキ横置き */
};
enum PaperOption { /* オプション装置の種類 */
P_NONE, /* オプション装置なし */
P_TRACTOR, /* トラクタフィーダ */
P_CUTSHEET, /* カットシートフィーダ */
P_LETSHEET /* ハガキフィーダ */
};
/* ビットイメージ出力フラグ */
#define P_GAIJI 1 /* 外字 */
#define P_RSV (1 << 1) /* システム予約 */
#define P_KANJI2 (1 << 2) /* 全角JIS第2水準漢字 */
#define P_KANJI1 (1 << 3) /* 全角JIS第1水準漢字 */
#define P_ANK (1 << 4) /* 半角文字 */
enum PColorKind { /* カラー印刷の色種類 */
P_MONO, /* モノクロ印刷 */
P_COLORBIT1 /* カラー8色印刷 */
};
/* 印刷モード */
#define P_DRAFT 1 /* ドラフト印刷 */
#define P_COLOR (1 << 1) /* カラー印刷 */
enum PDrvrCommand { /* プリンタドライバコマンド */
PD_INIT, /* プリンタドライバの初期化 */
PD_TINI, /* プリンタドライバの終了 */
PD_CTRL, /* プリンタの直接制御 */
PD_DEFAULT, /* プリントレコードのデフォルト値設定 */
PD_VALIDATE, /* プリントレコードの内容チェック */
PD_IMGDLOG, /* ページ印刷用の印刷環境設定ダイアログ
のオープン */
PD_STRDLOG, /* コード印刷用の印刷環境設定ダイアログ
のオープン */
PD_OPENIMG = 8, /* ページ印刷用のグラフレコードの作成 */
PD_RECORDPG, /* ページ印刷用のグラフスクリプトの
記録開始 */
PD_PRINTPG, /* ページ印刷用のグラフスクリプトの
記録終了とページ印刷の開始 */
PD_ACTION, /* プリントコントロール */
PD_CLOSEIMG, /* ページ印刷の終了 */
PD_PRINTSTR, /* コード印刷の開始 */
PD_VERSION, /* プリンタドライバのバージョン取得 */
PD_MAXRECT, /* 印刷可能な最大範囲の取得 */
PD_STATE /* 16 */ /* プリンタ状態の取得 */
};
enum PDrvrCtrl { /* ドライバコントロール */
PD_RESET, /* プリンタの初期化 */
PD_CRLF, /* 改行 */
PD_FF, /* 改ページ */
PD_THRU /* データの出力 */
};
enum PrinterState { /* プリンタの状態 */
P_BUSY, /* 印刷不可 */
P_READY /* 印刷可能 */
};
enum PrintCtrl { /* プリントコントロール */
P_STAT, /* 印刷を続行する */
P_END, /* 印刷を終了する */
P_STOP, /* 印刷を中断する */
P_CONT /* 印刷を再開する */
};
enum PrintState { /* 印刷の状態 */
P_ERROR = -1, /* 印刷が終了した */
P_FINISH, /* 印刷中 */
P_WORKING, /* 印刷が中断した */
P_RESTING, /* タイムアウト発生 */
P_TIMEOUT /* エラー発生 */
};
struct Print { /* プリントレコード */
short paperKind; /* 用紙の種類 */
short paperOption; /* オプション装置の種類 */
Rect paperRect; /* 用紙のサイズ */
Rect limitRect; /* 印刷可能範囲を示すレクタングル */
Rect pageRect; /* 印刷範囲を示すレクタングル */
char paperRsv[8]; /* システム予約 */
short docImage; /* ビットイメージ出力フラグ */
short docColumn; /* 1行の文字数 */
short docLine; /* 1ページの行数 */
short docTab; /* タブ幅 */
short docHeight; /* 改行幅 */
char docRsv[8]; /* システム予約 */
Point res; /* 縦横の解像度 */
Point ANKSize; /* 半角文字のサイズ */
Point kanjiSize; /* 全角文字のサイズ */
short colorKind; /* カラー印刷の色種類 */
char prnRsv[8]; /* システム予約 */
unsigned short manVer; /* プリントマンのバージョン */
char manRsv[8]; /* システム予約 */
unsigned short drvVer; /* プリンタドライバのバージョン */
char drvRsv[8]; /* システム予約 */
short minPage; /* 印刷範囲開始ページ */
short maxPage; /* 印刷範囲終了ページ */
long userData; /* ユーザー用のデータ */
char userRsv[8]; /* ユーザー用のワークエリア */
short fstPage; /* 印刷開始ページ */
short lstPage; /* 印刷終了ページ */
short dupPage; /* 1ページの印刷枚数 */
short mode; /* 印刷モード */
short mask; /* 印刷モードのマスク */
char jobRsv[8]; /* システム予約 */
short pageCount; /* 現在印刷中のページ */
short dupCount; /* 現在印刷中の部数 */
char workRsv[8]; /* システム予約 */
};
struct PDrvrInfo { /* プリンタドライバ情報レコード */
short ID; /* リソースPRTDのID */
unsigned short version; /* ドライバのバージョン */
char name[44]; /* ドライバ名(ASCIIZ型文字列) */
};
#ifdef __PROTO_TYPE
int PMInit(void);
int PMTini(void);
int PMOpen(int);
int PMClose(void);
int PMSetDefault(Print **);
int PMValidate(Print **);
int PMImageDialog(Print **);
int PMStrDialog(Print **);
int PMEnvCopy(Print **, Print **);
int PMJobCopy(Print **, Print **);
Graph *PMOpenImage(Print **);
int PMRecordPage(Rect *);
int PMPrintPage(void);
int PMCancelPage(void);
int PMAction(int);
int PMCloseImage(void);
int PMDrawString(Print **, char **, long, int);
int PMVer(void);
int PMDrvrVer(void);
int PMDrvrCtrl(int, ...);
int PMDrvrID(void);
_Handle PMDrvrHdl(void);
int PMMaxRect(Print **, int, Rect *);
int PMSaveEnv(Print **);
int PMReady(void);
int PMProcPrint(Print **, int (*)(Print **, Rect *));
int PMDrvrInfo(int, PDrvrInfo *);
#undef __PROTO_TYPE
#else
int PMInit();
int PMTini();
int PMOpen();
int PMClose();
int PMSetDefault();
int PMValidate();
int PMImageDialog();
int PMStrDialog();
int PMEnvCopy();
int PMJobCopy();
Graph *PMOpenImage();
int PMRecordPage();
int PMPrintPage();
int PMCancelPage();
int PMAction();
int PMCloseImage();
int PMDrawString();
int PMVer();
int PMDrvrVer();
int PMDrvrCtrl();
int PMDrvrID();
_Handle PMDrvrHdl();
int PMMaxRect();
int PMSaveEnv();
int PMReady();
int PMProcPrint();
int PMDrvrInfo();
#endif __PROTO_TYPE
#endif __PRINT_H